home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Night Owl 6
/
Night Owl's Shareware - PDSI-006 - Night Owl Corp (1990).iso
/
031a
/
wsnoop3.zip
/
SNOOP.DOC
< prev
next >
Wrap
Text File
|
1991-08-23
|
14KB
|
514 lines
______________________
______________________
Snoop
Special Demo Version
______________________
______________________
______________________
|
|
|
| Copyright (C) 1991, by Keith Flower and Yousuf Lodhia.
|
| All Rights Reserved.
|
|
| Snoop Information:
|
| Micronite, Inc.
| (800) 755-0848
|
| CompuServe 76220, 2703
| BIX kflower
| Internet kef@sactoh0.SAC.CA.US
|
| Trademark Acknowledgements:
|
| Microsoft, OS/2, MS-DOS, and Windows are
| registered trademarks of Microsoft Corporation.
|
| Macintosh is a registered trademark of Apple
| Computers.
|
| NeXT is a registered trademark of NeXT Corporation.
|
| CompuServe is a registered trademark of CompuServe
| Incorporated.
AN OVERVIEW OF SNOOP
________
"Is there a way to track function calls in
the same way that the Windows Spy utility
tracks message flow?"
"What goes on behind the curtains in
Windows?"
"How do I set up the parameters for
StretchDIBits ( )?"
"Which Windows functions is that application
calling to produce such a nice effect?"
Snoop provides an answer to these questions. Snoop tells you
about calls Windows applications make to the Windows API
functions. Snoop reports the full names and values of a
function's parameters as set by the calling program.
The special demonstration version of Snoop associated with this
document is being distributed to show a single important feature
of the Snoop commercial product, the function tracking mechanism.
_________________________________________________________________
Snoop Demonstration Version. Copyright (C) 1991. Page 1
USING THE SNOOP DEMO
________
1. Copy SNOOP.EXE and SNOOPS.DLL to a directory on your system.
2. Run SNOOP from the Windows Program Manager. Snoop runs in
Windows standard and enhanced modes; it does not operate in
real mode.
3. An initial "Snoop Demo Information" dialog box appears
first. Choose "OK" when you've finished reading the dialog
box text.
4. From the menu entitled "Functions", choose "Snoop on
Function(s)...." Select a Windows function to Snoop on
from the dialog box that appears.
Snoop will report to you every call made to that function by
Windows applications (except Snoop itself), and will display
the complete parameter list associated with that function.
The calls are displayed in a scrollable list box.
5. Double click on one of the descriptions in the displayed
list box. Snoop shows a sample parameter expansion for a
function call.
6. To stop reporting on the function you chose, select another
function to report on, or simply exit the Snoop demo.
Here are some functions to try:
Start Snoop and select the "Ellipse" function. Invoke the
Windows Paintbrush utility and use the "circle" tool to draw
ellipses.
Select the "LocalAlloc" function and examine the variety of
conditions that cause an allocation of memory.
Select "TextOut" and pull down some menus from within
different Windows applications.
Select "SendMessage" and track the message traffic flowing
through the system.
_________________________________________________________________
Snoop Demonstration Version. Copyright (C) 1991. Page 2
ABOUT THE SNOOP DEMO
________
We need real people to exercise parts of our unreleased
commercial product and give us feedback on its usefulness and the
problems associated with it. That's where this demonstration
program comes in. Obviously Snoop's function tracking is a big
(if not the biggest) piece of the product's total functionality,
and we actively seek your comments and criticisms of its
utility. The Windows API collection is rich enough that we
have a particular need for feedback on which functions (and under
what conditions) Snoop might have difficulty tracking.
Here are some of the major differences between the demo and the
Snoop commercial product:
The only menu items selectable in the demo are
associated with the limited function tracking
operation.
Clicking on a displayed function description in the
retail version expands parameters based on their type.
For example, clicking on
lstrcpy (lpString1 0x04ad:089a, lpString2 0x04ad:8840)
changes the description to
lstrcpy (lpString1 "", "Unrecoverable Application Error")
The retail version knows about structure expansion, so
that clicking on
PtInRect (lpRect 0x10a4: Point 0x01000100)
yields
PtInRect (lpRect->left 50 lpRect->top 50
lpRect->right 300 lpRect->bottom 300,
Point.x 256 Point.y 256)
Additionally, the expansion level is fully configurable
in the retail version.
The retail version can report parameters using Windows
constant names instead of just numeric values. For
example, Snoop can show the memory type flags in a call
to LocalAlloc:
_________________________________________________________________
Snoop Demonstration Version. Copyright (C) 1991. Page 3
LocalAlloc (LMEM_MOVEABLE | LMEM_ZEROINIT, 256)
instead of just
LocalAlloc (0x42, 256);
The retail version allows multiple functions to be
tracked. Additionally, the retail version allows
function and message tracking within single or multiple
tasks. The demo tracks functions in all tasks (except
Snoop itself).
The retail version allows tracking based on some
characteristic of parameters associated with a message
or function. For example, one might want to only track
the LocalAlloc function when the allocation size
request is greater than 1 kilobyte.
The retail version allows information to be saved to
disk.
The retail version can report function return values.
A retail version for OS/2 Presentation Manager will be
available.
There are many other important differences, but as we note above,
the demo's main purpose is in showing the elements of the
function tracking mechanism.
_________________________________________________________________
Snoop Demonstration Version. Copyright (C) 1991. Page 4
CONTACTING US
_______
If you have questions or wish to contact us with information
about the Snoop demo, please direct your comments to us if at all
possible via electronic mail:
CompuServe 76220, 2703
BIX kflower
The commercial version of Snoop is being developed by Micronite,
Inc. Micronite is a software engineering and consulting firm
specializing in Windows, OS/2, and multimedia development.
Micronite provides cross platform conversions for DOS, Windows,
OS/2, the Macintosh family, and NeXT systems.
If you would like information about the Snoop commercial product,
please call us toll-free:
Micronite, Inc.
(800) 755-0848
_________________________________________________________________
Snoop Demonstration Version. Copyright (C) 1991. Page 5
COPYRIGHT INFORMATION
________
Although this version of Snoop is provided as a demonstration, it
is fully copyrighted software. However, you are encouraged to
copy and share the Snoop demo subject to the following
stipulations.
The Snoop demo program, documentation, and any associated files
may be freely copied and shared as long as all files are
included. You cannot use the Snoop demo for commercial purposes
without written consent from us. All copyright notices
associated with the Snoop demo must remain intact.
Snoop demo files may be freely copied and shared with others, so
long as no charge is made. The files may be distributed via
modem provided that all files are archived and transmitted
together. No files may be distributed unless all files are
included.
No payment other than a nominal shipping and handling fee may be
charged for distributing the Snoop demo.
_________________________________________________________________
Snoop Demonstration Version. Copyright (C) 1991. Page 6
WARRANTY INFORMATION
________
The authors make no representation or warranties with respect to
this document or the demonstration product this document
describes. This statement is in lieu of all other warranties,
express or implied, including but not limited to implied
warranties of merchantability and fitness for a particular
purpose. Additionally, the authors are not liable for any
consequential damages whatsoever, (including, without limitation,
damages for loss of business profits, business interruption, loss
of business information, or other pecuniary loss). Your use of
this product (the Snoop demo) signifies your acceptance and
agreement to this.
Every effort has been made to insure that this program works
without error. However Snoop and its associated files and
documentation are NOT guaranteed to be error-free.
We are interested in improving this product for everyone's
benefit, and we welcome reports of problems with the demo and
suggestions for improvement. Again, please contact us with your
comments at
CompuServe 76220, 2703
BIX kflower
_________________________________________________________________
Snoop Demonstration Version. Copyright (C) 1991. Page 7